Dart.PowerTCP.SslSockets Namespace > SymmetricCryptoStream Class > Write Method : Write(Byte[],Int32,Int32) Method |
Writes a sequence of bytes to the SymmetricCryptoStream.CoreStream and returns when the operation is complete.
[Visual Basic]
Overloads Overrides Public Sub Write( _
ByVal buffer() As Byte, _
ByVal offset As Integer, _
ByVal count As Integer _
)
Exception | Description |
---|---|
IOException | Thrown when the Stream is not writeable. |
ArgumentNullException | Thrown when the buffer is null. |
ArgumentOutOfRangeException | Thrown when the offset is less than zero or when count is less than or equal to zero. |
ArgumentException | Thrown when the (offset + count) > buffer.Length. |
CryptographicException | Thrown when the data is unable to be encrypted. |
This method writes data to the SymmetricCryptoStream.CoreStream, encrypting it with the supplied algorithm and key.
The following example demonstrates encrypting data and writing to a SymmetricCryptoStream on the fly.
[Visual Basic]
' Create a key and some data.
Dim key As Byte() = System.Text.Encoding.Default.GetBytes("test key")
Dim data As Byte() = System.Text.Encoding.Default.GetBytes("This is the plain text data")
' Create a FileStream to hold the data
Dim f As System.IO.FileStream = New System.IO.FileStream("C:\encrypted\file.txt", System.IO.FileMode.Create)
Dim sc As New SymmetricCryptoStream(AlgorithmType.Rijndael, key, f)
' Always must flush the final block after writing.
sc.FlushFinalBlock()
f.Position=0
f.Close()
' The data is now encrypted and saved to a file. To decrypt, simply initialize a SymmetricCryptoStream
' in the same way as demonstrated above and read from the Filestream, instead of writing to it.
[C#]
// Create a key and some data.
byte[] key =
System.Text.Encoding.Default.GetBytes("test key");
byte[] data = System.Text.Encoding.Default.GetBytes("This is the plain text data");
// Create a FileStream to hold the data
System.IO.FileStream f = new System.IO.FileStream("C:\\encrypted\file.txt",
System.IO.FileMode.Create);
SymmetricCryptoStream sc = new SymmetricCryptoStream(key, f);
// Write to the file. This encrypts the data.
sc.Write(data, 0, data.Length);
// Always must flush the final block after writing.
sc.FlushFinalBlock();
f.Position=0;
f.Close();
// The data is now encrypted and saved to a file. To decrypt, simply initialize a SymmetricCryptoStream
// in the same way as demonstrated above and read from the Filestream, instead of writing to it.
Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family
SymmetricCryptoStream Class | SymmetricCryptoStream Members | Overload List
Send comments on this topic.
Documentation version 1.1.2.0.
© 2008 Dart Communications. All rights reserved.